#!/bin/bash
function tulosta_parametri () {
monennestako_parametrista_alkaen=${@:$#}
montako_tulostetaan=1
#echo ${@:(-$monennestako_parametrista_alkaen):$montako_tulostetaan}  # perästäpäin laskettuna
echo ${@:$monennestako_parametrista_alkaen:$montako_tulostetaan}      # alustapäin laskettuna
}

tulosta_parametri {99999..1} 11111 # tämä on sama kuin jos kirjoitettaisiin: tulosta_parametri 1000000 99999 99998 .... 2 1 0 11111. 1111 on tulostettavan jäjestysnumero
tulosta_parametri ja se oolannin sota oli kauhea 4 # toimii siis tekstillä yhtä hyvin

read # toinen tapa:
function tulosta_parametri () {
echo -n "tarkoittamasi parametrin arvo on: "; eval echo \$${@:$#}  # tuliskohan tämmöisten käskyjen kopiointi mieleen ? 
}

tulosta_parametri {1..999999} 999999
tulosta_parametri ja se oolannin sota oli kauhea 4 

read # kolmas tapa:
function tulosta_parametri () {
matriisi=(0 $@)  # BASH:in matriisit alkaa nollasta ja tässä 0 on vain jottei aivot nyrjähtäisi ihmetellessä miksi tulos on "yhdellä pielessä"
osoitettu=$(eval echo \$${!#}) 
echo -n "tarkoittamasi parametrin arvo on: "; echo ${matriisi[$osoitettu]}  
}

tulosta_parametri {1..100000} 9999 # kutsun voisi kirjoittaa: tulosta_parametri 1 2 3 4 ... 100000 9999. Tuo 9999 on: tulosta 9999:s parametri
tulosta_parametri ja se oolannin sota oli kauhea 4 
 
read
function tulosta_parametri () {
monennestako_parametrista_alkaen=$1
montako_tulostetaan=1
#echo ${@:(-monennestako_parametrista_alkaen):montako_tulostetaan}  # perästäpäin laskettuna
echo ${@:monennestako_parametrista_alkaen+1:montako_tulostetaan}    # alustapäin laskettuna
}

#matriisi=($(seq 99999))
tulosta_parametri 11111 {99999..1} # suomenkielinen seloste käskystä: tulosta 11111:s jäsen joukosta: 99999 99998 ... 3 2 1

#read
#for (( n=1; n<=100; n++ )); do  [[ $(( $n%6 )) = 0 ]] && echo $n kelpaa ; done
#echo $((1^4))    # let "c=1^0"; echo $c
#for (( n=1; n<=100; n++ )); do  [[ $(( $n%6 )) = 0 || $(( $n%7 )) = 0 ]] && ! [[ $(( $n%6 )) = 0 && $(( $n%7 )) = 0 ]] && echo $n kelpaa ; done
# 6,7,12,14,18,21,24,28,30,35,36,42,48,49,54,56,60,63,66,70,72,77,78,84,90,91,96,98 # 44 ja 84 ei  
